1. Field of the Invention
This invention relates to graphics accelerators for use with computer systems and, more particularly, to extremely fast graphics accelerators.
2. History of the Prior Art
The constant emphasis in the design of computer systems has been on making such systems faster and able to handle larger amounts of information so that they may accomplish more work. The ability of computers to do more work is also enhanced by their ability to do more different kinds of work. For example, computers have become of much more use in many more activities with the advent of computer graphics displays which allow the presentation of not only numbers and text materials but pictures and graphs representing the meanings of those numbers and adding to the meaning of the text material. It has gradually become the belief of a great number of people in the computer industry that a graphical output should be presented on almost all computer systems.
Unfortunately, the presentation of a graphics display by a computer system requires a great deal of the processing power of that system. For example, the presentation of a single frame of graphical material on the output display of a fairly standard-sized workstation requires that information regarding approximately one thousand pixels in a horizontal direction and approimately one thoudand pixels in a vertical direction be stored. Thus, information must be stored which relates to approximately one million pixels for each frame to be displayed. In a conventional system which is capable of providing a number of different colors on the display terminal, each of those pixels may contain eight bits of digital information regarding the particular pixel. Consequently, approximately eight million bits of information needs to be computed and stored for each frame to be presented on the output display.
The simple matter of dealing with such a large amount of information in order to present a graphics output occupies a substantial amount of the time available for a central processing unit (CPU) and may substantially slow the operation of even the fastest of such processors. For this reason, it has become common for computer systems to include graphics accelerators capable of assisting the central processing unit in its operations by taking over some portion of the data processing function relating to the display of graphics on the computer output display. This offloading of some portion of the graphics processing functions from the central processing unit to a graphics coprocessor may substantially increase the speed with which any particular computer system is able to process graphics information. However, recently it has become apparent that, at the rate with which new computer systems are being designed and the concomitant rate at which the speeds of central processing units are being increased, graphics accelerators designed to operate with such systems must be redesigned each year for an exponentially increasing number of computers just to maintain their speed advantage over the central processing units.
To emphasize this problem, it has been suggested that the speed with which computer systems are capable of handling information has doubled in every year since the year 1984 and will continue to do so. Moreover, a review of a line of individual computers manufactured by the assignee of this invention shows that a single workstation has become, in five years, a family of more than ten individual workstations based on three individual central processing units designed by three different manufacturers. If only half of the individual computer designs double in speed each year without any increase in the number of different workstations manufactured, it will require that five individual graphics accelerators be designed each year to run with each of these new workstations. This is an inconceivable amount of work for an engineering staff.
One reason that the graphics accelerators designed for computer systems are so rapidly made obsolete relates to the philosophy of the design of those systems. Usually, a computer system is designed and runs well with the applications immediately available for it. As more advanced graphics applications are developed for the system, the system slows; and it becomes apparent that it needs help in processing the graphics information in order to function at a reasonable speed. This gives impetus to the design of a graphics accelerator for that system. The pressures of providing such an accelerator within the time constraints for marketing the accelerator while the computer system remains a significant economic product have caused designers of graphics coprocessors to utilize the latest processor technology and attempt to adapt that technology to the computer system already designed. Usually a microprocessor is utilized as a basis for a graphics coprocessor, and various changes and additions are made to the circuitry of the microprocessor in order to enhance its graphics functions and unburden the processor from some of the constraints normal to the use of that processor as a central processor. Utilizing this design philosophy and the most up-to-date technology, it is possible to design graphics accelerators which are able to speed the graphics functions of the computer system from two to five times over that attainable by the central processing unit without the graphics coprocessor. Such a philosophy is fine, except that with the next faster processor, it is necessary to entirely redesign the accelerator again using newer technology so that the new central processing unit will not be burdened by the speed of its graphics coprocessor. As has been emphasized above, this philosophy of design is self-defeating and a new approach to devising a graphics coprocessor is necessary.